package com.cysyz.mylib.utils.tree;

import java.util.Collection;
import java.util.List;

/**
 * Created by cuiyong on 2015/1/11.
 */
public interface TreeBuilder {
    /**
     * 在传入的nodeList集合中查找之间的相互关系，从而构建一颗多叉树，返回值中为类型为clazz的根节点的集合
     *
     * @param clazz 传入的nodeListt中节点的类型
     * @param nodeList 要对其构建树的目标集合
     * @param <T>
     * @return 类型为clazz的根节点的集合
     */
    <T extends TreeAble> List<T> generateMultiWayTree(Class<T> clazz, Collection<T> nodeList);
}
